/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package GUI_SIFACT;

import GUI_Busquedas.Frm_busq_factura;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import sifact.conexion.cConexion;

/**
 *
 * @author joselugb
 */
public class Frm_principal extends javax.swing.JFrame {

    /**
     * Creates new form Frm_principal
     */
    public Frm_principal() {
        this.setExtendedState(this.MAXIMIZED_BOTH);
        setDefaultLookAndFeelDecorated(true);
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jMenuBarPrincipal = new javax.swing.JMenuBar();
        jMenuSesion = new javax.swing.JMenu();
        jMenuItemIniciar = new javax.swing.JMenuItem();
        jMenuItemCerrar = new javax.swing.JMenuItem();
        jSeparatorSesion = new javax.swing.JPopupMenu.Separator();
        jMenuItemSalir = new javax.swing.JMenuItem();
        jMenuPersonas = new javax.swing.JMenu();
        jMenuItemClientes = new javax.swing.JMenuItem();
        jMenuItemProveedores = new javax.swing.JMenuItem();
        jMenuItemEmpleados = new javax.swing.JMenuItem();
        jMenuArticulos = new javax.swing.JMenu();
        jMenuItemProductos = new javax.swing.JMenuItem();
        jMenuItemCategoriaProductos = new javax.swing.JMenuItem();
        jMenuItemInventario = new javax.swing.JMenuItem();
        jMenuFacturas = new javax.swing.JMenu();
        jMenuItemFactura = new javax.swing.JMenuItem();
        jMenuItemAnularFactura = new javax.swing.JMenuItem();
        jMenuItemModificarFactura = new javax.swing.JMenuItem();
        jMenuReportes = new javax.swing.JMenu();
        jMenuAyuda = new javax.swing.JMenu();
        jMenuItemManualUsuario = new javax.swing.JMenuItem();
        jMenuItemAcercade = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("SISTEMA DE FACTURACION");
        setForeground(java.awt.Color.white);

        jMenuSesion.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/Users.png"))); // NOI18N
        jMenuSesion.setText("SESION");
        jMenuSesion.setFont(new java.awt.Font("Segoe UI", 0, 14)); // NOI18N

        jMenuItemIniciar.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_I, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItemIniciar.setFont(new java.awt.Font("Segoe UI", 0, 14)); // NOI18N
        jMenuItemIniciar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/User.png"))); // NOI18N
        jMenuItemIniciar.setText("Iniciar");
        jMenuItemIniciar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemIniciarActionPerformed(evt);
            }
        });
        jMenuSesion.add(jMenuItemIniciar);

        jMenuItemCerrar.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F4, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItemCerrar.setFont(new java.awt.Font("Segoe UI", 0, 14)); // NOI18N
        jMenuItemCerrar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/Stop Red Button.png"))); // NOI18N
        jMenuItemCerrar.setText("Cerrar");
        jMenuItemCerrar.setEnabled(false);
        jMenuItemCerrar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemCerrarActionPerformed(evt);
            }
        });
        jMenuSesion.add(jMenuItemCerrar);
        jMenuSesion.add(jSeparatorSesion);

        jMenuItemSalir.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_X, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItemSalir.setFont(new java.awt.Font("Segoe UI", 0, 14)); // NOI18N
        jMenuItemSalir.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/Exit.png"))); // NOI18N
        jMenuItemSalir.setText("Salir");
        jMenuItemSalir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemSalirActionPerformed(evt);
            }
        });
        jMenuSesion.add(jMenuItemSalir);

        jMenuBarPrincipal.add(jMenuSesion);

        jMenuPersonas.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Crystal_Clear_app_Community_Help.png"))); // NOI18N
        jMenuPersonas.setText("PERSONAS");

        jMenuItemClientes.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Crystal_Clear_app_katuberling.png"))); // NOI18N
        jMenuItemClientes.setText("CLIENTES");
        jMenuItemClientes.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemClientesActionPerformed(evt);
            }
        });
        jMenuPersonas.add(jMenuItemClientes);

        jMenuItemProveedores.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Crystal_Clear_app_Login_Manager.png"))); // NOI18N
        jMenuItemProveedores.setText("PROVEEDORES");
        jMenuItemProveedores.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemProveedoresActionPerformed(evt);
            }
        });
        jMenuPersonas.add(jMenuItemProveedores);

        jMenuItemEmpleados.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Crystal_Clear_app_kuser.png"))); // NOI18N
        jMenuItemEmpleados.setText("EMPLEADOS");
        jMenuItemEmpleados.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemEmpleadosActionPerformed(evt);
            }
        });
        jMenuPersonas.add(jMenuItemEmpleados);

        jMenuBarPrincipal.add(jMenuPersonas);

        jMenuArticulos.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Crystal_Clear_app_warehause.png"))); // NOI18N
        jMenuArticulos.setText("ARTICULOS");

        jMenuItemProductos.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32x32-Crystal_Clear_app_ksirtet.png"))); // NOI18N
        jMenuItemProductos.setText("PRODUCTOS");
        jMenuItemProductos.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemProductosActionPerformed(evt);
            }
        });
        jMenuArticulos.add(jMenuItemProductos);

        jMenuItemCategoriaProductos.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32xCrystal_Clear_action_view_multicolumn.png"))); // NOI18N
        jMenuItemCategoriaProductos.setText("CATEGORIA PRODUCTOS");
        jMenuItemCategoriaProductos.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemCategoriaProductosActionPerformed(evt);
            }
        });
        jMenuArticulos.add(jMenuItemCategoriaProductos);

        jMenuItemInventario.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Crystal_Clear_app_kedit.png"))); // NOI18N
        jMenuItemInventario.setText("INVENTARIO");
        jMenuItemInventario.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemInventarioActionPerformed(evt);
            }
        });
        jMenuArticulos.add(jMenuItemInventario);

        jMenuBarPrincipal.add(jMenuArticulos);

        jMenuFacturas.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Crystal_Clear_app_kexi.png"))); // NOI18N
        jMenuFacturas.setText("FACTURACION");

        jMenuItemFactura.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/icon_ventas-2.png"))); // NOI18N
        jMenuItemFactura.setText("NUEVA FACTURA");
        jMenuItemFactura.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemFacturaActionPerformed(evt);
            }
        });
        jMenuFacturas.add(jMenuItemFactura);

        jMenuItemAnularFactura.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/DEL-PAPER-2.png"))); // NOI18N
        jMenuItemAnularFactura.setText("ANULAR FACTURA");
        jMenuItemAnularFactura.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemAnularFacturaActionPerformed(evt);
            }
        });
        jMenuFacturas.add(jMenuItemAnularFactura);

        jMenuItemModificarFactura.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/Misc-Tutorial-icon-2.png"))); // NOI18N
        jMenuItemModificarFactura.setText("MODIFICAR ESTADO");
        jMenuItemModificarFactura.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItemModificarFacturaActionPerformed(evt);
            }
        });
        jMenuFacturas.add(jMenuItemModificarFactura);

        jMenuBarPrincipal.add(jMenuFacturas);

        jMenuReportes.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Crystal_Clear_app_kchart.png"))); // NOI18N
        jMenuReportes.setText("REPORTES");
        jMenuBarPrincipal.add(jMenuReportes);

        jMenuAyuda.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Crystal_Clear_app_kblackbox.png"))); // NOI18N
        jMenuAyuda.setText("AYUDA");

        jMenuItemManualUsuario.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F1, 0));
        jMenuItemManualUsuario.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/32px-Torchlight_help_icon_svg.png"))); // NOI18N
        jMenuItemManualUsuario.setText("CONTENIDO (Manual)");
        jMenuAyuda.add(jMenuItemManualUsuario);

        jMenuItemAcercade.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/Comment.png"))); // NOI18N
        jMenuItemAcercade.setText("ACERCA DE");
        jMenuAyuda.add(jMenuItemAcercade);

        jMenuBarPrincipal.add(jMenuAyuda);

        setJMenuBar(jMenuBarPrincipal);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 770, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 430, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void jMenuItemClientesActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemClientesActionPerformed
        // TODO add your handling code here:
        try {
            //cConexion.iniciar("postgres", "joselugb");
            Frm_Clientes obj = new Frm_Clientes();
            obj.setVisible(true);
            obj.setLocationRelativeTo(null);
            //cConexion.cerrar();
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, "Se produjo el siguiente error:\n" + ex, "Error", JOptionPane.ERROR_MESSAGE);
        }

    }//GEN-LAST:event_jMenuItemClientesActionPerformed

    private void jMenuItemSalirActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemSalirActionPerformed
        // TODO add your handling code here:
        int seleccion = JOptionPane.showConfirmDialog(this, "¿Realmente Desea Salir...?", "SALIR", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
        if (seleccion == 0) {
            System.exit(0);
        }
    }//GEN-LAST:event_jMenuItemSalirActionPerformed

    private void jMenuItemProveedoresActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemProveedoresActionPerformed
        // TODO add your handling code here:
        try {
            //cConexion.iniciar("postgres", "joselugb");
            Frm_Proveedor obj = new Frm_Proveedor();
            obj.setVisible(true);
            obj.setLocationRelativeTo(null);
            //cConexion.cerrar();
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, "Se produjo el siguiente error:\n" + ex, "Error", JOptionPane.ERROR_MESSAGE);
        }
    }//GEN-LAST:event_jMenuItemProveedoresActionPerformed

    private void jMenuItemEmpleadosActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemEmpleadosActionPerformed
        // TODO add your handling code here:
        try {
            //cConexion.iniciar("postgres", "joselugb");
            Frm_Empleado obj = new Frm_Empleado();
            obj.setVisible(true);
            obj.setLocationRelativeTo(null);
            //cConexion.cerrar();
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, "Se produjo el siguiente error:\n" + ex, "Error", JOptionPane.ERROR_MESSAGE);
        }
    }//GEN-LAST:event_jMenuItemEmpleadosActionPerformed

    private void jMenuItemCategoriaProductosActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemCategoriaProductosActionPerformed
        // TODO add your handling code here:
        try {
            //cConexion.iniciar("postgres", "joselugb");
            Frm_Categoria obj = new Frm_Categoria();
            obj.setVisible(true);
            obj.setLocationRelativeTo(null);
            //cConexion.cerrar();
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, "Se produjo el siguiente error:\n" + ex, "Error", JOptionPane.ERROR_MESSAGE);
        }
    }//GEN-LAST:event_jMenuItemCategoriaProductosActionPerformed

    private void jMenuItemProductosActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemProductosActionPerformed
        // TODO add your handling code here:
        try {
            //cConexion.iniciar("postgres", "joselugb");
            Frm_Producto obj = new Frm_Producto();
            obj.setVisible(true);
            obj.setLocationRelativeTo(null);
            //cConexion.cerrar();
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, "Se produjo el siguiente error:\n" + ex, "Error", JOptionPane.ERROR_MESSAGE);
        }
    }//GEN-LAST:event_jMenuItemProductosActionPerformed

    private void jMenuItemInventarioActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemInventarioActionPerformed
        // TODO add your handling code here:
        try {
            //cConexion.iniciar("postgres", "joselugb");
            Frm_Inventario.setDefaultLookAndFeelDecorated(true);
            Frm_Inventario obj;
            //try {
            obj = new Frm_Inventario(null, true);
            obj.setVisible(true);
            //cConexion.cerrar();
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, "Se produjo el siguiente error:\n" + ex, "Error", JOptionPane.ERROR_MESSAGE);
        }
    }//GEN-LAST:event_jMenuItemInventarioActionPerformed

    private void jMenuItemFacturaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemFacturaActionPerformed
        // TODO add your handling code here:
        try {
            //cConexion.iniciar("postgres", "joselugb");
            Frm_Factura obj = new Frm_Factura("", 0);
            obj.setVisible(true);
            obj.setLocationRelativeTo(null);
            //cConexion.cerrar();
        } catch (Exception ex) {
            JOptionPane.showMessageDialog(null, "Se produjo el siguiente error:\n" + ex, "Error", JOptionPane.ERROR_MESSAGE);
        }
    }//GEN-LAST:event_jMenuItemFacturaActionPerformed

    private void jMenuItemAnularFacturaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemAnularFacturaActionPerformed
        // TODO add your handling code here:        
        Frm_busq_factura.setDefaultLookAndFeelDecorated(true);
        try {
            //cConexion.iniciar("postgres", "joselugb");
            Frm_busq_factura obj = new Frm_busq_factura(null, true, "");
            obj.setVisible(true);
            obj.setLocationRelativeTo(null);
            if (!obj.getObjcadena().equals("")) {
                //DatosFormularioBusqueda(obj.getObjcadena());
                Frm_Factura fac = new Frm_Factura(obj.getObjcadena(), 1);
                fac.setVisible(true);
                fac.setLocationRelativeTo(null);
            }
            //cConexion.cerrar();
        } catch (Exception ex) {
            Logger.getLogger(Frm_Clientes.class.getName()).log(Level.SEVERE, null, ex);
        }
    }//GEN-LAST:event_jMenuItemAnularFacturaActionPerformed

    private void jMenuItemModificarFacturaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemModificarFacturaActionPerformed
        // TODO add your handling code here:
        Frm_busq_factura.setDefaultLookAndFeelDecorated(true);
        try {
            //cConexion.iniciar("postgres", "joselugb");
            Frm_busq_factura obj = new Frm_busq_factura(null, true, "");
            obj.setVisible(true);
            obj.setLocationRelativeTo(null);
            if (!obj.getObjcadena().equals("")) {
                //DatosFormularioBusqueda(obj.getObjcadena());
                Frm_Factura fac = new Frm_Factura(obj.getObjcadena(), 2);
                fac.setVisible(true);
                fac.setLocationRelativeTo(null);
            }
            //cConexion.cerrar();
        } catch (Exception ex) {
            Logger.getLogger(Frm_Clientes.class.getName()).log(Level.SEVERE, null, ex);
        }
    }//GEN-LAST:event_jMenuItemModificarFacturaActionPerformed

    private void jMenuItemIniciarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemIniciarActionPerformed
        // TODO add your handling code here:
        Frm_Login.setDefaultLookAndFeelDecorated(true);
        Frm_Login obj = new Frm_Login();
        obj.setVisible(true);
        obj.setLocationRelativeTo(null);
        jMenuItemIniciar.setEnabled(false);
        jMenuItemCerrar.setEnabled(true);

    }//GEN-LAST:event_jMenuItemIniciarActionPerformed

    private void jMenuItemCerrarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItemCerrarActionPerformed
        try {
            // TODO add your handling code here:
            cConexion.cerrar();
            jMenuItemIniciar.setEnabled(true);
            jMenuItemCerrar.setEnabled(false);
        } catch (Exception ex) {
            Logger.getLogger(Frm_principal.class.getName()).log(Level.SEVERE, null, ex);
        }
    }//GEN-LAST:event_jMenuItemCerrarActionPerformed

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /*
         * Set the Nimbus look and feel
         */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /*
         * If Nimbus (introduced in Java SE 6) is not available, stay with the
         * default look and feel. For details see
         * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {//           
            //Para obtener el aspecto de ventanas propio del sistema operativo 
            //en el que estemos (XP, Ubuntu, Mac OS, etc.)
            javax.swing.UIManager.setLookAndFeel(javax.swing.UIManager.getSystemLookAndFeelClassName());
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(Frm_principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(Frm_principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(Frm_principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(Frm_principal.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /*
         * Create and display the form
         */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Frm_principal().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JMenu jMenuArticulos;
    private javax.swing.JMenu jMenuAyuda;
    private javax.swing.JMenuBar jMenuBarPrincipal;
    private javax.swing.JMenu jMenuFacturas;
    private javax.swing.JMenuItem jMenuItemAcercade;
    private javax.swing.JMenuItem jMenuItemAnularFactura;
    private javax.swing.JMenuItem jMenuItemCategoriaProductos;
    private javax.swing.JMenuItem jMenuItemCerrar;
    private javax.swing.JMenuItem jMenuItemClientes;
    private javax.swing.JMenuItem jMenuItemEmpleados;
    private javax.swing.JMenuItem jMenuItemFactura;
    private javax.swing.JMenuItem jMenuItemIniciar;
    private javax.swing.JMenuItem jMenuItemInventario;
    private javax.swing.JMenuItem jMenuItemManualUsuario;
    private javax.swing.JMenuItem jMenuItemModificarFactura;
    private javax.swing.JMenuItem jMenuItemProductos;
    private javax.swing.JMenuItem jMenuItemProveedores;
    private javax.swing.JMenuItem jMenuItemSalir;
    private javax.swing.JMenu jMenuPersonas;
    private javax.swing.JMenu jMenuReportes;
    private javax.swing.JMenu jMenuSesion;
    private javax.swing.JPopupMenu.Separator jSeparatorSesion;
    // End of variables declaration//GEN-END:variables
}
